x=0.00001
n=2147483647
#会超时
def myPow(x,n):
    if x==0:
        return 1
    if n==0:
        return 1
    elif n>0:
        mul=1
        while n>0:
            mul*=x
            n-=1
        return mul
    else:
        mul=1
        x=1/x
        while n<0:
            mul*=x
            n+=1
        return mul

def powCal(x,n):
    if n==0:
        return 1
    y=powCal(x,n//2)
    return y*y if n%2==0 else y*y*x
def myPow1(x,n):
    return powCal(x,n) if n>=0 else 1/powCal(x,-n)


def myPow2(x,n):
    if n==0:
        return 1
    x_contribution=x
    flag=False
    if n<0:
        flag=True
        n=-n
    ans=1
    while n>0:
        if n%2==1:
            ans*=x_contribution
        x_contribution*=x_contribution
        n//=2
    return ans if not flag else 1/ans



print(myPow2(x,n))